Shift range control device

ABSTRACT

A shift range control device includes an angle calculation unit, a target angle setting unit, a learning unit and a drive control unit. The learning unit learns a correction value to be used in calculating a motor angle target value based on a motor angle and an output shaft signal. The learning unit learns the correction value based on at least a first change point value, which is the motor angle at a timing at which the output shaft signal changes when a rotation member rotates in a first direction from a state in which an engagement member is in the center of valley section, and/or a second change point value, which is the motor angle at a timing at which the output shaft signal changes when the rotation member rotates in a second direction from a state in which the engagement member is in the center of the valley section.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation application of InternationalPatent Application No. PCT/JP2018/022045 filed on Jun. 8, 2018, whichdesignated the U.S. and claims the benefit of the priority from JapanesePatent Application No. 2017-118563 filed on Jun. 16, 2017. The entiredisclosures of all of the above applications are incorporated herein byreference.

FIELD

The present disclosure relates to a shift range control device.

BACKGROUND

Conventionally, a shift range switching device, which switches a shiftrange by controlling a motor in accordance with a shift range switchingrequest from a driver, is known. For example, an output shaft sensor isprovided to detect a rotation angle of an output shaft firmly fitted andcoupled to a rotation shaft of a speed reduction mechanism thattransmits rotation of a motor after speed reduction.

SUMMARY

A shift range control device according to the present disclosureswitches a shift range by controlling drive of a motor in a shift rangeswitching system. The shift range switching system includes a motor, arotation member, an engagement member, a rotation angle sensor and anoutput shaft sensor. The rotation member has plural valley sections andridge sections between the valley sections and rotates integrally withan output shaft to which rotation of the motor is transmitted. Theengagement member is engageable with the valley section corresponding tothe shift range. The motor rotation angle sensor outputs a motorrotation angle signal corresponding to a rotation position of the motor.The output shaft sensor outputs an output shaft signal corresponding toa rotation position of the output shaft.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects, features and advantages of the presentdisclosure will become more apparent from the following detaileddescription taken in conjunction with the accompanying drawings. In thedrawings:

FIG. 1 is a perspective view showing a shift-by-wire system according toone embodiment;

FIG. 2 is a block diagram showing a general configuration of theshift-by-wire system according to the embodiment;

FIG. 3 is an explanatory view showing learning of rattle width based onan output shaft signal according to the embodiment;

FIG. 4 is a flowchart showing learning processing according to theembodiment; and

FIG. 5 is a flowchart showing target angle setting processing accordingto the embodiment.

EMBODIMENT FOR CARRYING OUT THE INVENTION Embodiment

A shift range control device will be hereinafter described withreference to the drawings. As shown in FIG. 1 and FIG. 2, ashift-by-wire system 1 as a shift range switching device includes amotor 10, a shift range switching mechanism 20, a parking lock mechanism30, a shift range control device 40 and the like. The motor 10 isrotated by power supplied from a battery which is installed in thevehicle (not shown) and functions as a drive source of the shift rangeswitching mechanism 20. The motor 10 of the present embodiment is apermanent magnet type DC brushless motor.

As shown in FIG. 2, an encoder 13 detects, as a motor rotation anglesensor, a rotation position of a rotor (not shown) of the motor 10. Theencoder 13 is a magnetic type rotary encoder and includes a magnetrotating with a rotor, a Hall IC for detecting magnetic field or thelike. The encoder 13 outputs A-phase and B-phase pulse signals for eachpredetermined angle in synchronism with the rotation of the rotor.Hereinafter, the signal from the encoder 13 is referred to as a motorrotation angle signal SgE. In the present embodiment, the encoder 13 isconfigured as a single system that outputs one signal each for the Aphase and the B phase. In the present embodiment, the encoder 13 hashigher angle detection accuracy than the output shaft sensor 16. A speedreducer 14 is provided between the motor shaft 105 (refer to FIG. 3) ofthe motor 10 and an output shaft 15. The speed reducer 14 reduces therotation of the motor 10 and outputs the rotation of the motor 10 to theoutput shaft 15. The rotation of the motor 10 is thus transmitted to theshift range switching mechanism 20.

The output shaft sensor 16 has a first sensor unit 161 and a secondsensor unit 162, and detects the rotation position of the output shaft15. The output shaft sensor 16 according to the present embodiment is amagnetic sensor that detects a change in the magnetic field of a target215 (refer to FIG. 1) provided on a detent plate 21 as a rotating memberdescribed later. The output shaft sensor 16 is attached to a positionwhere the magnetic field of the target 215 is detectable. In the figure,the first sensor unit 161 is labeled as a first sensor and the secondsensor unit 162 is labeled as a second sensor.

The sensor units 161 and 162 are so-called MR sensors havingmagnetoresistive elements (MR elements), which detect changes in themagnetic field of the target 215. The first sensor unit 161 detects amagnetic field corresponding to the rotation position of the target 215,and outputs the output shaft signal Sg1 to the ECU 50. The second sensorunit 162 detects a magnetic field corresponding to the rotation positionof the target 215, and outputs the output shaft signal Sg2 to the ECU50. The output shaft sensor 16 of the present embodiment includes twosensor units 161 and 162, and independently transmits the output shaftsignals Sg1 and Sg2 to the ECU 50. That is, the output shaft sensor 16has a double system.

In the present embodiment, the output shaft sensor 16 is a magneticsensor that detects a change in the magnetic field of the target 215 ina contactless manner. Thereby, as compared with a contact type sensor,the output shaft signals Sg1 and Sg2 can be easily multiplexed withoutlargely changing the configuration on the actuator side. The outputshaft signals Sg1 and Sg2 can be suitably used for abnormalitymonitoring such as diagnosis and failsafe operation of the shift-by-wiresystem 1 because the output shaft signals Sg1 and Sg2 can meet a requestfor relatively high safety by multiplexing (in the present embodiment,doubling) the output shaft signals Sg1 and Sg2.

As shown in FIG. 1, the shift range switching mechanism 20 includes adetent plate 21, a detent spring 25 and the like. The shift rangeswitching mechanism 20 transmits the rotational drive force output fromthe speed reducer 14 to a manual valve 28 and a parking lock mechanism30. The detent plate 21 is fixed to the output shaft 15 and rotatesintegrally with the output shaft 15 when the motor 10 is driven.

The detent plate 21 has a pin 24 protruding in parallel with the outputshaft 15. The pin 24 is connected to the manual valve 28. As the detentplate 21 is driven by the motor 10, the manual valve 28 reciprocates inthe axial direction. That is, the shift range switching mechanism 20converts the rotational motion of the motor 10 to the linear movementand transmits it to the manual valve 28. The manual valve 28 is providedto a valve body 29. The reciprocating movement in the axial direction ofthe manual valve 28 switches hydraulic pressure supply paths to ahydraulic clutch (not shown) to switch the engaged state of thehydraulic clutch, so that the shift range is switched.

As schematically shown in FIG. 3, four valley sections 221 to 224 areprovided on the detent spring 25 side of the detent plate 21.Specifically, a first valley section 221, a second valley section 222, athird valley section 223 and a fourth valley section 224 correspond to aP range, an R range, an N range and a D range, respectively. Also, afirst ridge section 226, a second ridge section 227 and a third ridgesection 228 are provided between the first valley section 221 and thesecond valley section 222, between the second valley section 222 and thethird valley section 223 and between the third valley section 223 andthe fourth valley section 224, respectively. In FIG. 3, a one-dot chainline indicates a center position of each valley section 221 to 224.

Here, focusing on the first ridge section 226, the first valley section221 corresponds to the “P range side ridge section” and the secondvalley section 222 corresponds to the “counter P range side ridgesection”. Focusing on the second ridge section 227, the second valleysection 222 corresponds to the “P range side valley section” and thethird valley section 223 corresponds to the “counter P range side valleysection.” Focusing on the third ridge section 228, the third valleysection 223 corresponds to the “P range side valley section” and thefourth valley section 224 corresponds to the “counter P range sidevalley section.”

As shown in FIG. 1, the detent plate 21 is provided with the target 215whose magnetic field changes according to the rotation of the outputshaft 15. The target 215 is formed of a magnetic material. The target215 may be a separate member from the detent plate 21. Alternatively,the detent plate 21 may be formed by pressing, for example. in case thatthe detent plate 21 is a magnetic material. The target 215 is formedsuch that output voltages, which are the output shaft signals Sg1 andSg2 of the output shaft sensor 16, change stepwise in accordance withthe rotation position of the output shaft 15. Details of the outputshaft signals Sg1 and Sg2 will be described later.

The detent spring 25 is a resiliently deformable plate-like memberprovided with a detent roller 26 at a tip end. The detent roller 26 isan engagement member. The detent roller 26 fits into one of the valleysections 211 to 214. In the present embodiment, since the number ofvalley sections 221 to 224 formed in the detent plate 21 is four, thenumber of engagement positions in which the detent roller 26 engages isfour.

The detent spring 25 presses the detent roller 26 toward the rotationcenter of the detent plate 21. When a rotational force equal to orlarger than a predetermined level is applied to the detent plate 21, thedetent spring 25 is deformed resiliently to enable the detent roller 26to move among the valley sections 221 to 224. When the detent roller 26fits into one of the valley sections 221 to 224, pivotal movement of thedetent plate 21 is restricted. In this way, the axial position of themanual valve 28 and the state of the parking lock mechanism 30 aredetermined and the shift range of the automatic transmission 5 is fixed.

The parking lock mechanism 30 includes a parking rod 31, a conicalmember 32, a parking lock pawl 33, a shaft 34 and a parking gear 35. Theparking rod 31 is generally L-shaped, and one end 311 side is fixed tothe detent plate 21. The conical member 32 is provided to the other end312 side of the parking rod 31. The conical member 32 is formed so as tocontract toward the other end 312 side. When the detent plate 21 pivotsin a reverse rotation direction, the conical member 32 moves toward adirection of an arrow P.

The parking lock pawl 33 is provided to abut on a conical surface of theconical member 32 and pivot around the shaft 34. On the parking gear 35side in the parking lock pawl 33, the parking lock pawl 33 has aprotrusion 331 that can mesh with the parking gear 35. When the detentplate 21 rotates in the reverse rotation direction and the conicalmember 32 moves in the direction of arrow P, the parking lock pawl 33 ispushed up so that the protrusion 331 meshes with the parking gear 35. Bycontrast, when the detent plate 21 rotates in the forward rotationdirection and the conical member 32 moves in the direction of arrow“NotP,” the protrusion 331 is released from meshing with the parkinggear 35.

The parking gear 35 is placed at an axle (not shown) so as to be capableof meshing with the protrusion 331 of the parking lock pawl 33. Theparking gear 35 meshing with the protrusion 331 restricts the rotationof the axle. When the shift range is the NotP range, which is one of theranges other than the P range, the parking gear 35 is not locked by theparking lock pawl 33 and the rotation of the axle is not restricted bythe parking lock mechanism 30. When the shift range is the P range, theparking gear 35 is locked by the parking lock pawl 33 and the rotationof the axle is restricted.

As shown in FIG. 2, the shift range control device 40 includes a motordriver 41, an ECU 50 and the like. The motor driver 41 outputs a drivesignal related to energization of each phase (U-phase, V-phase, W-phase)of the motor 10. A motor relay 46 is provided between the motor driver41 and a battery. The motor relay 46 is turned on when a start switch ofa vehicle, such as an ignition switch or the like, is turned on, so thatpower is supplied to the motor 10. The motor relay 46 is turned off whenthe start switch is turned off, so that power supply to the motor 10 isshut down.

An ECU 50 is mainly composed of a microcomputer or the like, andinternally includes, although not shown, a CPU, a ROM, a RAM, an I/O, abus line for connecting these components, and the like. Each processingexecuted by the ECU 50 may be software processing or may be hardwareprocessing. The software processing may be implemented by causing theCPU to execute a program. The program may be stored beforehand in amemory device such as a ROM, that is, in a readable non-transitorytangible storage medium. The hardware processing may be implemented by aspecial purpose electronic circuit.

The ECU 50 controls the switching of the shift range by controlling thedrive of the motor 10 based on a driver-requested shift range, a signalfrom a brake switch, a vehicle speed and the like. The ECU 50 controlsthe drive of a transmission hydraulic control solenoid 6 based on thevehicle speed, accelerator position, driver-requested shift range andthe like. By controlling the transmission hydraulic control solenoid 6,the shift stage is controlled. The transmission hydraulic controlsolenoid 6 is provided in number in correspondence to the number of theshift ranges and the like. In the present embodiment, one ECU 50controls the drive of the motor 10 and the solenoid 6. However, the ECU50 may be divided into a motor ECU for motor control and an AT-ECU forsolenoid control. Hereinafter, a drive control for the motor 10 will bemainly explained.

The ECU 50 includes an angle calculation unit 51, a learning unit 52, atarget angle setting unit 55, a drive control unit 56, a first storageunit 61, a second storage unit 62 and the like. These units 51, 52, 55and 56 correspond to angle calculation processing, learning processing,target angle setting processing and drive control processing,respectively, which are executed by the microcomputer based on controlprograms. The angle calculation unit 51 calculates an encoder countvalue θen which is a count value of the encoder 13 based on the motorrotation angle signal SgE output from the encoder 13. The encoder countvalue θen is a value which corresponds to actual mechanical angle andelectrical angle of the motor 10. In the present embodiment, the encodercount value θen corresponds to the “motor angle.”

The learning unit 52 calculates a rattle width θg based on the encodercount value θen and the output shaft signals Sg1 and Sg2. The targetangle setting unit 55 sets a target shift range based on thedriver-requested shift range based on a shift switch or the like, thevehicle speed, the signal from the brake switch and the like. Further,the target angle setting unit 55 sets a target count value θcmd, whichis a motor angle target value, according to the target shift range. Thedrive control unit 56 controls the drive of the motor 10 by feedbackcontrol or the like so that the motor 10 is stopped at the rotationposition where the encoder count value θen becomes the target countvalue θcmd. Details of the motor drive control for the motor 10 are notlimited in particular.

The first storage unit 61 is, for example, a volatile memory such as aRAM. Electric power is supplied to the first storage unit 61 via thestart switch. Therefore, the information stored in the first storageunit 61 is erased when the start switch is turned off. The secondstorage unit 62 is, for example, a volatile memory such as an SRAM.Power is directly supplied to the second storage unit 62 from thebattery directly without passing through the start switch. Therefore,the information stored in the second storage unit 62 is not erased evenwhen the start switch is turned off but erased when the battery isdisconnected. As the second storage unit 62, for example, a non-volatilememory such as an EEPROM may be used.

FIG. 3 schematically shows the detent plate 21 and the like in the upperpart, and the output shaft signals Sg1 and Sg2 in the lower part. Anangle design value Kr between centers of the valley sections 221 and222, an angle design value Kn between centers of the valley sections 222and 223 and an angle design value Kd between centers of the valleysections 223 and 224, which are shown in FIG. 3, are stored in advancein the ROM (not shown) or the like. In addition, an angle design valueK1 between angles θ1 and θ3 described later at which the output shaftsignals Sg1 and Sg2 change, and an angle design value K2 between theangle θ1 at which the output shaft signals Sg1 and Sg2 change and thecenter of the first valley section 221 is also stored in advance in theROM or the like. In the present embodiment, the angle design values Kn,Kr, Kd, K1 and K2 are all values, which correspond to the count value ofthe encoder 13, but may be any value that can be converted into angles.

The output shaft angle θs is an angle corresponding to the rotationposition of the output shaft 15. This angle is θ1 when the detent roller26 is at a predetermined position between the first valley section 221and the first ridge section 226. This angle is θ2 when the detent roller26 is located at a top of the second ridge section 227. This angle is θ3when the detent roller 26 is at a predetermined position between thethird ridge section 228 and the fourth valley section 224. In thepresent embodiment, the angle θ1 is set in the same manner as a boundaryvalue of a P lock guarantee range that guarantees the parking lock bythe parking lock mechanism 30. Further, the angle θ3 is set in the samemanner as a boundary value of a D hydraulic pressure guarantee rangewhich guarantees the hydraulic pressure of the drive range in theautomatic transmission 5.

When the output shaft angle θs is smaller than the angle θ1, the outputshaft signals Sg1 and Sg2 are constant at a value V1. When the outputshaft angle θs becomes the angle θ1, the output shaft signals Sg1 andSg2 change from the value V1 to a value V2. The output shaft signals Sg1and Sg2 are constant at the value V2 in a range where the output shaftangle θs is equal to or larger than the angle θ1 and smaller than theangle θ2. When the output shaft angle θs becomes the angle θ2, theoutput shaft signals Sg1 and Sg2 change from the value V2 to a value V3.The output shaft signals Sg1 and Sg2 are constant at the value V3 in arange where the output shaft angle θs is equal to or larger than theangle θ2 and smaller than an angle θ3. When the output shaft angle θsbecomes the angle θ3, the output shaft signals Sg1 and Sg2 change to avalue V4. When the output shaft angle θs is equal to or larger than theangle θ3, the output shaft signals Sg1 and Sg2 are constant at the valueV4.

The values V1, V2, V3 and V4 to which the output shaft signals Sg1 andSg2 change possibly are discrete and not an intermediate value of eachvalue. Further, a difference between the value V1 and the value V2, adifference between the value V2 and the value V3, and a differencebetween the value V3 and the value V4 are set to be a sufficiently largevalue as compared with the resolution and the sensor error. That is, inthe present embodiment, the switching of the value from the first valueto the second value, which differs to such an extent that it cannot beregarded as a continuous value in the movement among the valley sections221 to 224 of the detent roller 26, is referred to as “a stepwisechange.” The differences between the value V1 and the value V2, betweenthe value V2 and the value V3 and between the value V3 and the value V4may be equal or different one another. In the present embodiment, thevalues are assumed to be in a magnitude relation V1<V2<V3<V4, but thismagnitude relationship of the values V1 to V4 may be different.

In the present embodiment, the number of engagement positions of thedetent roller 26 is four. The output shaft sensor 16 and the target 215are provided so that the output shaft signals Sg1 and Sg2 change in foursteps according to the engagement position of the detent roller 26. Thatis, in the present embodiment, the number of engagement positions andthe number of steps of the output voltages that can be taken by theoutput shaft signals Sg1 and Sg2 coincide with each other. For example,in case that the output shaft signal is an analog signal that changescontinuously according to the rotational position of the output shaft 15as a reference example, processing such as AD conversion is required. Inthe present embodiment, the output shaft signals Sg1 and Sg2 changestepwise according to the shift range. In case that the output shaftsignals Sg1 and Sg2 have about four steps, processing such as ADconversion in the output shaft sensor 16 becomes unnecessary, so theconfiguration of the output shaft sensor 16 can be simplified.

In the illustration provided in the upper part of FIG. 3, “play” betweenthe motor shaft 105 and the output shaft 15 is conceptually shown. Here,illustration is made on an assumption that the output shaft 15 and thespeed reducer 14 are integrated with each other and that the motor shaft105 is movable within the play range of the speed reducer 14. However,the motor shaft 105 and the speed reducer 14 may be integrated with eachother and the play exists between the speed reducer 14 and the outputshaft 15. Here, the play between the motor shaft and the output shaft isassumed to exist between the gear of the speed reducer 14 and the motorshaft 105. It is noted that the play may be regarded as a sum of plays,rattle and the like. Hereinafter, the total of the play between themotor shaft 105 and the output shaft 15 is referred to as a rattle widthθg. In practice, the detent roller 26 moves between the valley sections221 to 224 by the rotation of the detent plate 21 integrally with theoutput shaft 15. However, in FIG. 3, the detent roller 26 is illustratedassuming the integral rotation with the output shaft 15.

The speed reducer 14 is provided between the motor shaft 105 and theoutput shaft 15 and the play including gear backlash is presenttherebetween. In the present embodiment, the motor 10 is a DC brushlessmotor. Therefore, when the power is not supplied to the motor 10, themotor shaft 105 rotates within the play because of cogging torque, forexample, and the motor shaft 105 and the output shaft 15 tend to beseparated. In addition, when the power supply to the motor 10 is shutdown at the position where the detent roller 26 is not in the center ofthe valley section 221 to 224, it is likely that the detent roller 26cannot be pushed in the center of the valley section 221 to 224 by thespring force of the detent spring 25 properly because of the influenceof the cogging torque. Therefore, in the present embodiment, the stopposition of the motor 10 is controlled accurately by learning the rattlewidth θg based on the output shaft signals Sg1, Sg2 and the encodercount value θen and setting the target count value θcmd using the rattlewidth θg.

Here, learning of the rattle width θg will be described. In FIG. 3, therotation direction for rotating the detent plate 21 so that the detentroller 26 moves in a direction of arrow A1 is referred to as a firstdirection, and the rotation direction for rotating the detent plate 21in a direction of arrow A2 is referred to as a second direction.

When the start switch is off, the shift range is the P range, and thedetent roller 26 is located at the center of the first valley section221. At this time, the motor 10 is likely to rotate within the range ofthe rattle width θg due to the cogging torque. It is thus difficult tospecify immediately after the start at which position within the rattlewidth θg the motor 10 is. When the target shift range is switched fromthe P range to a range other than the P range as indicated by the arrowA1, the detent roller 26 moves from the first valley section 221 to thefirst ridge section 226 side by the rotation of the detent plate 21.When the detent roller 26 passes through the center of the first valleysection 221 and is in a so-called hill climbing state, the motor shaft105 and the output shaft 15 are integrally rotated.

In the present embodiment, the angle θ1 which is the change point atwhich the output shaft signals Sg1 and Sg2 change is set between thefirst valley section 221 and the first ridge section 226. That is, whenthe detent plate 21 is rotated in the first direction from the state inwhich the detent roller 26 is fitted in the first valley section 221corresponding to the P range, the motor shaft 105 is in contact with thespeed reducer 14 at one end side of the rattle width θg at the pointwhere the output shaft signals Sg1 and Sg2 first change. The encodercount value θen at this time is stored in the first storage unit 61 as afirst change point value θenL.

When the target shift range is switched from the D range to a rangeother than the D range as indicated by the arrow A2, the detent roller26 moves from the fourth valley section 224 to the third ridge section228 by the rotation of the detent plate 21. When the detent roller 26passes through the center of the fourth valley section 224 and is in aso-called hill climbing state, the motor shaft 105 and the output shaft15 are integrally rotated.

In the present embodiment, the angle θ3 which is the change point atwhich the output shaft signals Sg1 and Sg2 change is set between thethird ridge section 228 and the fourth valley section 224. That is, whenthe detent plate 21 is rotated in the second direction from the state inwhich the detent roller 26 is fitted in the fourth valley section 224,the motor shaft 105 is in contact with the speed reducer 14 at the otherend side of the rattle width θg at the point where the output shaftsignals Sg1 and Sg2 first change. The encoder count value θen at thistime is stored in the first storage unit 61 as a second change pointvalue θenR.

An angle between the angle θ1 which is the first change point and theangle θ3 which is the second change point is stored in the secondstorage unit 62 as the angle design value K1. Therefore, the rattlewidth θg can be calculated based on the first change point value θenL,the second change point value θenR and the designed angle value K1(refer to equation (1)).

θg={K1−(θenR−θenL)}  (1)

An angle design value K2 between the angle θ1 which is the first changepoint and the center of the first valley section 221 is stored inadvance. Therefore, based on the first change point value θenL, theangle design value K2 and the learned rattle width θg, the P-rangecenter count value θp can be calculated (refer to equation (2)). This Prange center count value θp is the encoder count value outputted at thetime when the detent roller 26 is fitted in the first valley section 221and positioned in the center of the rattle width θg. Hereinafter, asappropriate, the state where the motor shaft 105 is positioned at thecenter of the rattle width θg when the detent roller 26 is fitted to thecenter of the valley section 221 to 224 is referred to as that the motor10 is positioned at the center of the valley section 221 to 224.

Further, since the angles between the centers of the valley sections 221to 224 are stored as the designed angle values Kr, Kn and Kd, the Rrange center count value θr, the N range center count value en and the Drange center count value θd of the encoder count values when the motor10 is positioned at the centers of the valley sections 222, 223 and 224can be calculated also (refer to equations (3) to (5)).

θp=θenL−K2−(θg/2)  (2)

θr=θenL−K2−(θg/2)+Kr  (3)

θn=θenL−K2−(θg/2)+Kr+Kn  (4)

θd=θenL−K2−(θg/2)+Kr+Kn+Kd  (5)

By setting the center count values θp, θr, θn and θd corresponding tothe target shift ranges as the target count values θcmd and controllingthe motor 10 so that the encoder count value θen becomes the targetcount value θcmd, the motor 10 can be stopped at the centers of thevalley sections 221 to 224. As far as the motor 10 is stopped at thecenter of the valley section 221 to 224, the detent roller 26 can befitted properly in the valley section 221 to 224 corresponding to thetarget shift range by the spring force of the detent spring 25 withoutbeing affected by the cogging torque.

Here, the learning processing of the rattle width θg will be describedwith reference to a flowchart of FIG. 4. This processing is executed bythe microcomputer, which operates functionally as the learning unit 52,at a predetermined cycle interval when the start switch is turned on.Hereinafter, each “step” in the figures is simply indicated as a symbol“S.” In first step S101, the learning unit 52 checks whether a firstlearning completion flag X_LN1 has been set. In the figure, a statewhere the flag is set is assumed to be “1,” and a state where it is notset is assumed to be “0.” The first learning completion flag X_LN1 isset when the first change point value θenL is stored in the firststorage unit 61. The first storage unit 61 is a volatile memory. Whenthe start switch is turned off, the first change point value θenL iserased and the first learning completion flag X_LN1 is reset. In case itis determined that the first learning completion flag X_LN1 is set(S101: YES), the processing proceeds to S108. In case it is determinedthat the first learning completion flag X_LN1 is not set (S101: NO), theprocessing proceeds to S102.

In S102, the learning unit 52 checks whether the target shift range hasbeen switched from the P range to a range other than the P range. Here,in case that the target shift range in the previous processing is the Prange and the target shift range in the present processing is other thanthe P range, an affirmative determination is made. In other cases, anegative determination is made. In case it is determined that the targetshift range has been switched from the P range to the range other thanthe P range (S102: YES), the processing proceeds to S103 and a firstlearning execution flag X_EX1 is set. The first learning execution flagX_EX1 indicates that learning of the first change point value θenL is inprogress. In case it is determined that the target shift range has notchanged (S102: NO), the processing proceeds to S104.

In S104, the learning unit 52 checks whether the first learningexecution flag X_EX1 is set. In case it is determined that the firstlearning execution flag X_EX1 is not set (S104: NO), the processingproceeds to S108. In case it is determined that the first learningexecution flag X_EX1 is set (S104: YES), the processing proceeds toS105.

In S105, the learning unit 52 checks whether the output shaft signalsSg1 and Sg2 have changed from the value V1 to the value V2. In case itis determined that the output shaft signals Sg1 and Sg2 have not changedfrom the value V1 (S105: NO), the processing proceeds to S108. In caseit is determined that the output shaft signals Sg1 and Sg2 have changedfrom the value V1 to the value V2 (S105: YES), the processing proceedsto S106.

In S106, the learning unit 52 stores the present encoder count value θenin the first storage unit 61 as the first change point value θenL. InS107, the learning unit 52 sets the first learning completion flag X_LN1and resets the first learning execution flag X_EX1.

In S108, the learning unit 52 checks whether a second learningcompletion flag X_LN2 is set. The second learning completion flag X_LN2is set when the rattle width θg is stored in the second storage unit 62.The second learning completion flag X_LN2 is not reset even when thestart switch is turned off, once the learning of the rattle width θg hasbeen completed. Further, the second learning completion flag X_LN2 isreset when the rattling width θg is erased by the removal of thebattery, the occurrence of battery rundown or the like. Furthermore, thesecond learning completion flag X_LN2 is reset when switching on and offof the start switch is made a predetermined number of times (forexample, several thousand times) after the previous learning of therattle width θg, and the rattle width θg is learned again. In case it isdetermined that the second learning completion flag X_LN2 is set (S108:YES), this routine is finished without executing processing S109 andsubsequent steps. In case it is determined that the second learningcompletion flag X_LN2 is not set (S108: NO), the processing proceeds toS109.

In S109, the learning unit 52 checks whether the target shift range hasbeen switched from the D range to a range other than the D range. Here,in case that the target shift range in the previous processing is the Drange and the target shift range in the present processing is other thanthe D range, an affirmative determination is made. In other cases, anegative determination is made and the processing proceeds to S111. Incase it is determined that the target shift range has been switched fromthe D range to the range other than the D range (S109: YES), theprocessing proceeds to S110 and a second learning execution flag X_EX2is set. The second learning execution flag X_EX2 is a flag whichindicates that learning of the second change point value θenR is inprogress.

In S111, the learning unit 52 checks whether the second learningexecution flag X_EX2 is set. In case it is determined that the secondlearning execution flag X_EX2 is not set (S111: NO), this routine isfinished without executing subsequent processing. In case it isdetermined that the second learning execution flag X_EX2 is set (S111:YES), the processing proceeds to S112.

In S112, the learning unit 52 checks whether the output shaft signalsSg1 and Sg2 have changed from the value V4 to the value V3. In case itis determined that the output shaft signals Sg1 and Sg2 are the value V4(S112: NO), this routine is finished without executing the processing ofS113 and subsequent steps. In case it is determined that the outputshaft signals Sg1 and Sg2 have changed from the value V4 to the value V3(S112: YES), the processing proceeds to S113.

In S113, the learning unit 52 sets the present encoder count value θenas the second change point value θenR. In S114, the learning unit 52sets the second learning completion flag X_LN2 and resets the secondlearning execution flag X_EX2. In S115, the learning unit 52 calculatesthe rattle width θg based on the equation (1), and stores the calculatedrattle width θg in the second storage unit 62.

Target angle setting processing will be described with reference to aflowchart of FIG. 5. This processing is executed by the target anglesetting unit 55 at a predetermined interval. In S201, the target anglesetting unit 55 acquires the driver-requested shift range, which isinput from the shift switch or the like, the vehicle speed, the brakesignal and the like. In S202, the target angle setting unit 55 sets atarget shift range based on the driver-requested shift range, thevehicle speed, the brake signal and the like.

In S203, the target angle setting unit 55 sets the target count valueθcmd based on the equations (2) to (5) according to the target shiftrange. Alternatively, the center count values θp, θr, θn and θd may becalculated and stored in the first storage unit 61 or the like inadvance after calculation of the rattle width θg, and the stored valuesmay be retrieved later.

As described above, the shift range control device 40 switches the shiftrange of the vehicle by controlling the drive of the motor 10 in theshift-by-wire system 1. The shift-by-wire system 1 includes the motor10, the detent plate 21, the detent roller 26, the encoder 13 and theoutput shaft sensor 16. The detent plate 21 is formed with a pluralityof valley sections 221 to 224 and a plurality of ridge sections 226 to228 between the valley sections 221 to 224 and rotates integrally withthe output shaft 15 to which the rotation of the motor 10 istransmitted. The detent roller 26 is engageable with the valley sections221 to 224 according to the shift ranges. The encoder 13 outputs themotor rotation angle signal SgE according to the rotation position ofthe motor 10. The output shaft sensor 16 outputs the output shaftsignals Sg1 and Sg2 corresponding to the rotation position of the outputshaft 15.

The shift range control device 40 includes the angle calculation unit51, the target angle setting unit 55, the learning unit 52 and the drivecontrol unit 56. The angle calculation unit 51 calculates the encodercount value θen based on the motor rotation angle signal SgE. The targetangle setting unit 55 sets the target count value θcmd corresponding tothe target shift range. The learning unit 52 learns the rattle width θg,which is the correction value used to calculate the target count valueθcmd, based on the encoder count value θen and the output shaft signalsSg1 and Sg2. The drive control unit 56 controls the drive of the motor10 such that the encoder count value θen becomes the target count valueθcmd.

The output shaft signals Sg1 and Sg2 change stepwise so as to havedifferent values before and after movement when the detent roller 26moves from the state of being fitted to the valley section 221 to 224 tothe adjacent valley section. Here, the rotation direction of the detentplate 21 at the time of switching from the P range to the range otherthan the P range is assumed to be the first direction, and the rotationdirection opposite to the first direction is assumed to be the seconddirection. The first direction and the second direction simply definethe direction of rotation. The detent plate 21 is assumed to rotate inthe first direction even in case that the detent plate 21 is rotatedfrom the range other than the P range, for example, in case of switchingfrom the R range to the D range.

The learning unit 52 learns the rattle width θg based on at least thefirst change point value θenL, which is the encoder count value θen atthe timing at which the output shaft signals Sg1 and Sg2 change when thedetent plate 21 rotates in the first direction from the state in whichthe detent roller 26 is in the center of the valley section 221 to 223,and/or the second change point value θenR, which is the encoder countvalue θen at the timing at which the output shaft signals Sg1 and Sg2change when the detent plate 21 rotates in the second direction from thestate in which the detent roller 26 is in the center of the valleysection 222 to 224.

In the present embodiment, the learning unit 52 learns the rattle widthθg based on the first change point value θenL, which is the encodercount value θen at the timing at which the output shaft signals Sg1 andSg2 change when the detent plate 21 rotates in the first direction fromthe state in which the detent roller 26 is in the center of the firstvalley section 221, and the second change point value θenR, which is theencoder count value θen at the timing at which the output shaft signalsSg1 and Sg2 change when the detent plate 21 rotates in the seconddirection from the state in which the detent roller 26 is in the centerof the fourth valley section 224. Further, the correction value of thepresent embodiment is a value corresponding to the total of the playsbetween the motor shaft 105 and the output shaft 15.

In the present embodiment, the output shaft signals Sg1 and Sg2 changestepwise in correspondence to the shift range. In addition, the rattlewidth θg is calculated based on the first change point value θenL andthe second change point value θenR, which are the encoder count valuesθen at the timing of the change in the output shaft signals Sg1 and Sg2when the detent plate 21 is rotating in the first direction and when itis rotating in the second direction. Then, by setting the target countvalue θcmd using the calculated rattle width θg, the motor 10 can bedriven to attain the center of the valley section 221 to 224irrespective of at which position in the rattle range the motor shaft105 is when driving of the motor 10 is started. Thereby, even in casethat the cogging torque is generated in the motor 10, positioningcontrol of the motor 10 can be performed with high accuracy so that thedetent roller 26 fits properly in the valley section 221 to 224corresponding to the target shift range. In case that an output shaftsensor which changes its output value stepwise is used, the detectionaccuracy becomes lower than a sensor which changes its output valuelinearly. In case that such an output shaft sensor is used, the controlaccuracy of the motor is lowered. In case that a motor such as a DCbrushless motor which generates cogging torque is used, for example,there arises a possibility that an engagement section cannot be properlyfitted into a recessed section corresponding to a target range becauseof the cogging torque.

The output shaft signals Sg1 and Sg2 change the values when the detentroller 26 is between the center of the first valley section 221 which isthe P range side valley section of the first ridge section 226 and thetop of the first peak section 226. The first change point value θenL isthe encoder count value θen at the timing when the value of the outputshaft signal changes during the movement of the detent roller 26 fromthe first valley section 221 toward the top of the first ridge section226. The output shaft signals Sg1 and Sg2 change the values when thedetent roller 26 is between the center of the fourth valley section 224,which is opposite to the P range side valley section of the third ridgesection 228, and the third ridge section 228. The second change pointvalue θenR is the encoder count value θen at the timing when the valuesof the output shaft signals Sg1 and Sg2 change during the movement ofthe detent roller 26 from the fourth valley section 224 toward the thirdridge section 228.

When the rotation direction of the detent plate 21 is the firstdirection and the detent roller 26 is between the center of the firstvalley section 221 and the top of the first ridge section 226, the motorshaft 105 and the output shaft 15 are integrally rotated with the detentroller 26 which is pushed to keep contacting the detent plate 21 in themoving direction. When the rotation direction of the detent plate 21 isthe second direction and the detent roller 26 is between the center ofthe fourth valley section 224 and the top of the third ridge section228, the motor shaft 105 and the output shaft 15 are integrally rotatedwith the detent roller 26 which is pushed to keep contacting the detentplate 21 in the moving direction. Therefore, by using the encoder countvalues θen determined when the motor shaft 105 and the output shaft 15rotate integrally, it is possible to learn the rattle width θg properly.

The rattle width θg is stored in the second storage unit 62, which isthe storage unit that holds information even when the start switch ofthe vehicle is turned off. The learning unit 52 learns the first changepoint value θenL each time the start switch is turned on. Further, thelearning unit 52 learns the second change point value θenR when theinformation related to the rattle width θg is not stored in the secondstorage unit 62.

Even in case that the value of the encoder 13 is reset at the time ofturning off of the start switch, the target count value θcmd can be setproperly by learning the first change point value θenL each time thestart switch is turned on. In addition, by storing the information inthe second storage unit 62 that holds the information even when thestart switch is turned off, it is possible to omit the learning relatedto the second change point value θenR as long as the rattle width θg iskept stored, The learning unit 52 learns again the second change pointvalue θenR, when the start switch is switched on and off thepredetermined number of times from learning of the second change pointvalue θenR. Thereby, the rattle width θg can be properly set again incorrespondence to the change with time.

In summary, according to the embodiment described above, a shift rangecontrol device calculates a motor angle based on a motor rotation anglesignal, sets a motor angle target value corresponding to a target shiftrange, learns a correction value to be used in calculating a motor angletarget value based on a motor angle and an output shaft signal, andcontrols driving of a motor such that the motor angle attains the motorangle target value.

The output shaft signal changes stepwise to different values betweenbefore and after moving when an engagement member moves from a state inwhich the engagement member is fitted in one valley section to anadjacent valley section. A rotation direction of a rotation member atthe time of switching from a P range to a range other than the P rangeis assumed to be a first direction and a rotation direction opposite tothe first direction is assumed to be a second direction. The shift rangecontrol device learns the correction value based on at least a firstchange point value, which is the motor angle at a timing at which theoutput shaft signal changes when the rotation member rotates in thefirst direction from a state in which the engagement member is in acenter of the valley section, and/or a second change point value, whichis the motor angle at a timing at which the output shaft signal changeswhen the rotation member rotates in the second direction from a state inwhich the engagement member is in the center of the valley section.

The correction value is calculated based on at least either one of thefirst change point value and the second change point value, which is themotor angle at a timing at which the output shaft signal changes ineither case of rotation of the rotation member in the first direction orin the second direction. By setting the motor angle target value basedon the calculated correction value, it is made possible to controlpositioning of the motor with high accuracy so that the engagementmember is properly fitted in the valley section corresponding to atarget shift range even when cogging torque is generated in the motor.

Other Embodiment

In the embodiment described above, the learning unit learns the rattlewidth, which is the correction value, based on the first change pointvalue and the second change point value. In another embodiment, thelearning unit may omit either one of learning of the first change pointvalue or the second change point value by using, for example, a designvalue.

In the embodiment described above, the first change point value islearned at the time of switching from the P range to the range otherthan the P range. In another embodiment, the value of the output shaftsignal may be changed when the detent roller 26 is between the center ofthe second valley section 222 and the top of the second ridge section227, and the motor angle at the change timing, at which the shift rangeis switched from the R range to the N range or the D range, may be setas the first change point value. Further, the value of the output shaftsignal may be changed when the detent roller 26 is between the center ofthe third valley section 223 and the top of the third ridge section 228,and the motor angle at the change timing, at which the shift range isswitched from the N range to the D range, may be set as the first changepoint value.

In the embodiment described above, the second change point value islearned at the time of switching from the D range to the range otherthan the D range. In another embodiment, the value of the output shaftsignal may be changed when the detent roller 26 is between the thirdvalley section 223 and the top of the second ridge section 227, and themotor angle at this change timing, at which the shift range is switchedfrom the N range to the R range or the P range, may be set as the secondchange point value. Further, the value of the output shaft signal may bechanged when the detent roller 26 is between the second valley section222 and the top of the first ridge section 226, and the motor angle atthe change timing, at which the shift range is switched from the R rangeto the P range, may be set as second change point value. In anotherembodiment, the output shaft signal may be changed between the centersof a plurality of P range side valley sections and the top of the ridgesections. In addition, the output shaft signal may be changed betweenthe centers of the valley sections, which are at the opposite side tothe P range, and the ridge sections.

In the embodiment described above, the angle θ1 at which the outputshaft signal changes is set in the same manner as the P lock guaranteerange. In another embodiment, the angle θ1 at which the output shaftsignal changes may be different from the P lock guarantee range.Further, the angle θ1 at which the output shaft signal changes is set inthe same manner as the D hydraulic pressure guarantee range. In anotherembodiment, the angle θ3 at which the output shaft signal changes may bedifferent from the D lock guarantee range.

In the embodiment described above, the second change point value and therattle width are learned when the rattle width is not stored in thestorage unit and when the start switch has been switched on and off thepredetermined number of times after the previous learning. In anotherembodiment, the number of times of learning of the second change pointvalue and the rattle width is not limited to the case described abovebut may be executed each time the start switch is turned on, forexample, similarly to the first change point value.

In the embodiment described above, the correction value is the rattlewidth corresponding to the sum of the plays between the motor shaft andthe output shaft. In another embodiment, the correction value may be anyvalue capable of computing the rattle width, for example, a value whichcorresponds to a distance from a center of rattle to an end position ofthe rattle, that is, (θg/2) or the like. The correction value may be thefirst change point value and the second change point value themselves.The target rotation position is calculated by an arithmetic equationcorresponding to the correction value.

In the embodiment described above, the motor is the DC brushless motor.In another embodiment, the motor may be any motor, such as, for example,a switched reluctance motor. In the embodiment described above, althoughthe number of winding sets of the motor is not referred to, the numberof winding sets may be one or plural. In the above embodiment, the motorrotation angle sensor is an encoder. In another embodiment, the rotationangle sensor need not necessarily be the encoder but may be any otherdevices such as a resolver or the like. That is, the motor angle is notlimited to the encoder count value but may be any value that can beconverted into the motor angle.

In the embodiment described above, an MR sensor is used as the outputshaft sensor. In another embodiment, a magnetic sensor other than the MRsensor may be used. Moreover, in the embodiment described above, adouble system is formed such that two independent output shaft signalsare output from the output shaft sensor. In another embodiment, thenumber of output shaft signals output from the output shaft sensor maybe one or three or more. That is, the output shaft sensor may be asingle system type or a triple or more multiplex system type. The motorrotation angle sensor may be a multiple system.

In the embodiment described above, the rotation member is the detentplate, and the engagement member is the detent roller. In anotherembodiment, the rotation member and the engagement member are notlimited to the detent plate and the detent roller, but may be any othertype in regard to a shape and the like. In the embodiment describedabove, the detent plate is provided with four valley sections. Inanother embodiment, the number of the valley sections is not limited tofour but may be any number. For example, the number of valley sectionsof the detent plate may be two so that the P range and the notP rangemay be switched. In the embodiment described above, the number ofengagement positions matches the number of steps of the output shaftsignal. In another embodiment, the number of engagement positions andthe number of steps of the output shaft signal may be different. Forexample, the values of the output shaft signal of the same ridge sectionmay be switched between the valley section on the P range side and thevalley section on the NotP range valley section side. The shift rangeswitching mechanism and the parking lock mechanism and the like may bedifferent from those of the embodiment described above.

In the embodiment described above, the speed reducer is placed betweenthe motor shaft and the output shaft. Although the details of the speedreducer are not described in the embodiment described above, it may beconfigured by using, for example, a cycloid gear, a planetary gear, aspur gear that transmits torque from a reduction mechanism substantiallycoaxial with the motor shaft to a drive shaft, or any combination ofthese gears. In another embodiment, the speed reducer between the motorshaft and the output shaft may be omitted, or a mechanism other than thespeed reducer may be provided. The present disclosure is not limited tothe embodiment described above but various modifications may be madewithin the scope of the present disclosure.

The present disclosure has been made in accordance with the embodiment.However, the present disclosure is not limited to such an embodiment andstructures. That is, this disclosure also encompasses variousmodifications and variations within the scope of equivalents.Furthermore, various combination and formation, and other combinationand formation including one, more than one or less than one element maybe made in the present disclosure.

What is claimed is:
 1. A shift range control device for switching ashift range by controlling driving of a motor in a shift range switchingsystem, which includes: a motor; a rotation member having plural valleysections and plural ridge sections formed between the valley sectionsand rotatable integrally with an output shaft to which rotation of themotor is transmitted; an engagement member engageable with the valleysection corresponding to a shift range; a motor rotation angle sensorfor outputting a motor rotation angle signal corresponding to a rotationposition of the motor; and an output shaft sensor for outputting anoutput shaft signal corresponding to a rotation position of the outputshaft, the shift range control device comprising: an angle calculationunit for calculating a motor angle based on the motor rotation anglesignal; a target angle setting unit for setting a motor angle targetvalue corresponding to a target shift range; a learning unit forlearning a correction value to be used in calculating the motor angletarget value based on the motor angle and the output shaft signal; and adrive control unit for controlling driving of the motor so that themotor angle attains the motor angle target value, wherein assuming thata rotation direction of the rotation member at the time of switchingfrom a P range to a range other than the P range is a first directionand a rotation direction opposite to the first direction is a seconddirection, the output shaft signal changes to different values stepwisebetween before and after moving when the engagement member moves from astate in which the engagement member is fitted in one valley section toan adjacent valley section; and the learning unit learns the correctionvalue based on at least a first change point value, which is the motorangle at a timing at which the output shaft signal changes when therotation member rotates in the first direction from a state in which theengagement member is in a center of the valley section, and/or a secondchange point value, which is the motor angle at a timing at which theoutput shaft signal changes when the rotation member rotates in thesecond direction from a state in which the engagement member is in acenter of the valley section.
 2. The shift range control deviceaccording to claim 1, wherein: assuming that the valley section which isat a P range side of the ridge section is a P range side valley section,the output shaft signal changes a value thereof at least one positionwhen the engagement member is between a center of the P range sidevalley section and a top point of the ridge section; and the firstchange point value is the motor angle at the timing of a change of thevalue of the output shaft signal when the engagement member moves fromthe P range side valley section toward the peak point of the ridgesection.
 3. The shift range control device according to claim 1,wherein: assuming that the valley section which is at an opposite sideto the P range of the ridge section is a valley section at an oppositeside to the P range, the output shaft signal changes a value thereof atleast at one position when the engagement member is between a center ofthe valley section at an opposite side to the P range and a top point ofthe ridge section; and the second change point value is the motor angleat the timing of a change of the value of the output shaft signal whenthe engagement member moves from the counter P range side valley sectiontoward the top point of the ridge section.
 4. The shift range controldevice according to claim 1, wherein: the correction value is stored ina storage unit, which maintains information therein even in case ofturning off of a start switch of a vehicle; the learning unit learns thefirst change point value each time the start switch is turned on; andthe learning unit learns the second change point value when noinformation related to the correction value is stored in the storageunit.
 5. The shift range control device according to claim 4, wherein:the learning unit learns the second change point value again when thestart switch is turned on and off a predetermined number of times afterprevious learning of the second change point value.
 6. A shift rangecontrol device for switching a shift range by controlling driving of amotor in a shift range switching system, which includes: a motor; arotation member having plural valley sections and plural ridge sectionsformed between the valley sections and rotatable integrally with anoutput shaft to which rotation of the motor is transmitted; anengagement member engageable with the valley section corresponding to ashift range; a motor rotation angle sensor for outputting a motorrotation angle signal corresponding to a rotation position of the motor;and an output shaft sensor for outputting an output shaft signalcorresponding to a rotation position of the output shaft, the shiftrange control device comprising a microcomputer, which has a memory andprogrammed to execute processing of: calculating a motor angle based onthe motor rotation angle signal; setting a motor angle target valuecorresponding to a target shift range; learning a correction value to beused in calculating the motor angle target value based on the motorangle and the output shaft signal; and controlling driving of the motorso that the motor angle attains the motor angle target value, whereinassuming that a rotation direction of the rotation member at the time ofswitching from a P range to a range other than the P range is a firstdirection and a rotation direction opposite to the first direction is asecond direction, the output shaft signal changes to different valuesstepwise between before and after moving when the engagement membermoves from a state in which the engagement member is fitted in onevalley section to an adjacent valley section; and the correction valueis learned by the processing of learning based on at least a firstchange point value, which is the motor angle at a timing at which theoutput shaft signal changes when the rotation member rotates in thefirst direction from a state in which the engagement member is in acenter of the valley section, and/or a second change point value, whichis the motor angle at a timing at which the output shaft signal changeswhen the rotation member rotates in the second direction from a state inwhich the engagement member is in a center of the valley section.
 7. Theshift range control device according to claim 6, wherein: assuming thatthe valley section which is at a P range side of the ridge section is aP range side valley section, the output shaft signal changes a valuethereof at least one position when the engagement member is between acenter of the P range side valley section and a top point of the ridgesection; and the first change point value is the motor angle at thetiming of a change of the value of the output shaft signal when theengagement member moves from the P range side valley section toward thepeak point of the ridge section.
 8. The shift range control deviceaccording to claim 7, wherein: assuming that the valley section which isat an opposite side to the P range of the ridge section is a valleysection at an opposite side to the P range, the output shaft signalchanges a value thereof at least at one position when the engagementmember is between a center of the valley section at an opposite side tothe P range and a top point of the ridge section; and the second changepoint value is the motor angle at the timing of a change of the value ofthe output shaft signal when the engagement member moves from thecounter P range side valley section toward the top point of the ridgesection.
 9. The shift range control device according to claim 8,wherein: the correction value is stored in a storage unit, whichmaintains information therein even in case of turning off of a startswitch of a vehicle; the first change point value is learned by theprocessing of learning each time the start switch is turned on; and thesecond change point value is learned by the processing of learning whenno information related to the correction value is stored in the storageunit.
 10. The shift range control device according to claim 9, wherein:the second change point value is learned again by the processing oflearning when the start switch is turned on and off a predeterminednumber of times after previous learning of the second change point value